// MoveIt
#include <moveit/robot_model_loader/robot_model_loader.h>
#include <moveit/planning_interface/planning_interface.h>
#include <moveit/planning_scene/planning_scene.h>
#include <moveit/kinematic_constraints/utils.h>
#include <moveit_msgs/msg/display_trajectory.hpp>
#include <moveit_msgs/msg/planning_scene.h>
#include <moveit/move_group_interface/move_group_interface.h>
#include <sensor_msgs/msg/joint_state.hpp>
namespace bl{
    class BorunteRobot : public rclcpp::Node
    {
    	private:
	    void run();
	    void printJointInfo();
	    rclcpp::Publisher<std_msgs::msg::String>::SharedPtr publisher_;
   	    rclcpp::Publisher<sensor_msgs::msg::JointState>::SharedPtr jointStatePublisher_;
   	    rclcpp::Subscription<std_msgs::msg::String>::SharedPtr subscription_;
   	    
   	    rclcpp::NodeOptions node_options;
   	    moveit::core::RobotModelPtr& robot_model;
   	    
   	    const std::string PLANNING_GROUP = "the_arm";
   	    moveit::core::RobotStatePtr robot_state;
  	    moveit::core::JointModelGroup* joint_model_group;
  	      planning_scene::PlanningScenePtr planning_scene;
   	    
	public:
	    BorunteRobot();
	    ~BorunteRobot();
    }
}
